package com.heima.service;

import com.heima.dto.InsertBusinessDto;
import com.heima.dto.OpportunityDto;
import com.heima.dto.OpportunitySelectDto;
import com.heima.dto.pagedto.PageOpportunityDto;

import com.heima.vo.BusinessIdInfoListVo;
import com.heima.vo.BusinessIdListVo;
import com.heima.vo.BusinessVo;
import com.heima.vo.PageResult;


public interface OpportunityService {
    /**
     * 商机分页查询
     * @param dto
     * @return
     */
    PageResult queryOpportunity(PageOpportunityDto dto);

    /**
     * 新增商机
     * @param dto
     */
    void insertBusiness(InsertBusinessDto dto);

    /**
     * 根据id查询商机
     * @param id
     * @return
     */
    BusinessIdListVo findBusinessById(Integer id);

    /**
     * 查询商机的跟进详情
     * @param businessId
     * @return
     */
    BusinessIdListVo businessIdListVo(Integer businessId);

    /**
     * 获取商机历史沟通记录
     * @param id
     * @return
     */
    BusinessIdInfoListVo businessIdInfoVo(Integer id);

    /**
     * 跟进商机并修改
     * @param dto
     */
    void recordBusiness(OpportunityDto dto);

    /**
     * 商机池分页查询
     * @param dto
     * @return
     */
    PageResult queryPool(PageOpportunityDto dto);

    /**
     * 分派商机(批量)
     * @param opportunitySelectDto
     */
    void assignment(OpportunitySelectDto opportunitySelectDto);
}
